Youtube 頻道:https://www.youtube.com/c/kaochenlong
如果畫面太小或看不清楚
可移駕至 https://www.youtube.com/watch?v=tcW7rSh_gGI 觀看 4K 高畫質版本
如果喜歡這個系列的影片,歡迎訂閱我的頻道
或是想聽我介紹一些別的內容,也可直接在這裡或 YouTube 頁面下方留言 :)
檔案:.gitlab-ci.yml
stages:
- linter
- testing
- build
- deploy
image: alpine:latest
# workflow:
# rules:
# - if: $CI_PIPELINE_SOURCE == "merge_request_event"
# when: always
# - when: never
variables:
my_name: "hello kitty"
helloworld:
stage: linter
script:
- echo "hello world , GitLab! $my_name $PROD_URL"
run_ruby_scripts:
image: ruby:3.1.2-alpine3.16
stage: testing
script:
- ruby -v
- ruby -e "puts 'hello world'"
run_unit_tests:
stage: testing
script:
- echo "執行單元測試"
build_docker_image:
stage: build
script:
- echo "building docker image"
deploy_to_production:
stage: deploy
script:
- echo "deploy to production"
各集影片連結:
Day 01 - 為你自己學 GitLab CI/CD
Day 02 - 什麼是 CI/CD
Day 03 - 建立 .gitlab-ci.yml
Day 04 - 新增 Pipeline Job
Day 05 - 工作階段以及相依性
Day 06 - 執行外部檔案
Day 07 - 指定分支
Day 08 - 環境變數
Day 09 - GitLab CI 與 Docker Image
Day 10 - Runner 與 Executor
Day 11 - 在本機的 GitLab Runner
Day 12 - 在 DigitalOcean 上安裝 GitLab Runner
Day 13 - Group Runner
Day 14 - 專案演練 part 1 設定 Pipeline
Day 15 - 專案演練 part 2 把專案打包成 Docker Image
Day 16 - 專案演練 part 3 推上 Docker Registry
Day 17 - 專案演練 part 4 自動遞增 Image 版號
Day 18 - 使用 Docker Compose
Day 19 - 使用 SSH 連線伺服器
Day 20 - 部署 Image 到伺服器上
Day 21 - 部署 Staging 伺服器
Day 22 - 整理重複的工作
Day 23 - 手動部署 Production 環境
Day 24 - Artifacts 產物
Day 25 - Deploy on AWS part 1
Day 26 - Deploy on AWS part 2
Day 27 - Deploy on AWS part 3
Day 28 - Deploy on GCP part 1
Day 29 - Deploy on GCP part 2
Day 30 - 重點回顧
在 global 區域使用 image 宣告要注意,官方有宣告不建議使用,在未來會取消支援。
會建議使用 default:image
ex:
default:
image: ruby:3.0
讚!感謝提醒 :)